package fr.generali.accueilclient.gwt.client.ui.components.titretableau;

import com.google.gwt.core.client.GWT;
import com.google.gwt.resources.client.CssResource;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;

import fr.generali.accueilclient.gwt.client.ui.resources.GlobalResources;

/**
 * 
 * Une titreTableau se présente sous la forme d'un Label au dessous d'un tableau
 * Une titreTableau ne présente aucune intelligence, est se veut être un composant
 * pour structurer les données<br>
 * mais sans que celles-ci y soient liées directement.
 * 
 */
public class TitreTableau extends Composite {

    private static TitreTableauUiBinder uiBinder = GWT.create(TitreTableauUiBinder.class);

    interface TitreTableauUiBinder extends UiBinder<Widget, TitreTableau> {
    }

    public interface Resources extends GlobalResources {

        @Source({ "components/titreTableau/titreTableau.css" })
        Style style();

        interface Style extends CssResource {
            String titreTableau();
        }
    }

    /** Le Bundle contenant les Css associés au widget. */
    @UiField
    protected Resources res;

    /** Le libellé de la titreTableau */
    @UiField
    Label nameLabel;

    public TitreTableau() {
        initWidget(uiBinder.createAndBindUi(this));
        res.style().ensureInjected();
    }

    public TitreTableau(String intituleTitreTableau) {
        initWidget(uiBinder.createAndBindUi(this));
        nameLabel.setText(intituleTitreTableau);
    }

    public void setText(String text) {
        nameLabel.setText(text);
    }

}
